package com.fruitshop.service;

import com.fruitshop.dto.UserLoginDTO;
import com.fruitshop.vo.UserInfoVO;

/**
 * 用户服务接口
 */
public interface UserService {
    
    /**
     * 用户登录
     *
     * @param loginDTO 登录数据
     * @return 用户信息
     */
    UserInfoVO login(UserLoginDTO loginDTO);
    
    /**
     * 获取用户信息
     *
     * @param userId 用户ID
     * @return 用户信息
     */
    UserInfoVO getUserInfo(Long userId);
    
    /**
     * 更新用户手机号
     *
     * @param userId 用户ID
     * @param phone  手机号
     * @return 更新后的用户信息
     */
    UserInfoVO updatePhone(Long userId, String phone);
    
    /**
     * 微信登录
     *
     * @param openid 微信用户唯一标识
     * @return 用户信息
     */
    UserInfoVO loginByWechat(String openid);
    
    /**
     * 微信手机号登录
     *
     * @param openid      微信用户唯一标识
     * @param phoneNumber 手机号
     * @return 用户信息
     */
    UserInfoVO loginByWechatPhone(String openid, String phoneNumber);
    
    /**
     * 保存模拟用户
     *
     * @param userInfo 用户信息
     * @return 用户信息
     */
    UserInfoVO saveMockUser(UserInfoVO userInfo);
} 